The diagnosis of failure states or operational states of components making up an information processing apparatus has been performed as part of the maintenance of the information processing apparatus. There are two cases of such diagnosis: one is diagnosis externally performed on the information processing apparatus, and the other is diagnosis performed by the information processing apparatus itself. The self-diagnosis performed by the information processing apparatus itself can be performed, for example, by the information processing apparatus running a diagnostic program.
There are two cases of self-diagnosis: one is the case in which diagnosis is performed while the information processing apparatus is in service, that is diagnosis is performed by the information processing apparatus simultaneously with predetermined application processing, and the other is the case in which diagnosis is performed while the information processing apparatus is not in service, that is while the information processing apparatus is not conducting application processing. When self-diagnosis is performed while the information processing apparatus is in service, the information processing apparatus runs a diagnostic program on an operating system (OS) (hereinafter called a service OS) which is used to provide service. The information processing apparatus running the diagnostic program on the service OS allows for periodical self-diagnosis in parallel with the execution of application processing and for continuous monitoring of failures of components. Conducting diagnosis while the service OS is running in this manner is called online maintenance or online diagnosis, and a diagnostic program that performs online maintenance is called an online maintenance tool.
In addition, when the information processing apparatus in service performs online diagnosis, the information processing apparatus can change the content of the self-diagnosis operation in accordance with a diagnosis history stored while the information processing apparatus is in service and failure information obtained as a result of the previous diagnoses. Similarly, when the information processing apparatus in service is coupled to external apparatuses, by obtaining information held by the external apparatuses, such as the history of component replacement, or information about the quality of the components used in the information processing apparatus, the operation of the self-diagnosis can be changed in accordance with the replacement history or the quality information.
On the other hand, when the information processing apparatus performs self-diagnosis while the information processing apparatus is not in service, the information processing apparatus runs an OS for maintenance (maintenance OS) instead of the service OS, and a diagnostic program is run on this maintenance OS. The diagnostic program run on the maintenance OS can complete diagnosis in a short period of time by occupying the full processing power of the information processing apparatus for the diagnosis. Furthermore, the self-diagnosis performed while the service is stopped does not depend on the service OS, and diagnosis is possible even in a state in which the service OS is not activated. Maintenance and diagnosis performed without running the service OS or by avoiding activation of the service OS is called offline maintenance, and a diagnostic program that performs offline maintenance is called an offline maintenance tool.
The following patent documents describe related arts: Japanese Laid-open Patent Publication No. 2000-99484, and Japanese Laid-open Patent Publication No. 7-271432.
Diagnosis using an online maintenance tool allows customized diagnosis according to the server configuration or the state of a user operation to be realized by using the diagnosis history and diagnosis error information stored in the user service OS, or information about the quality of components and replacement of the components stored in a maintenance-data storage server. However, in offline diagnosis, which is performed while the service OS is stopped, the above-mentioned various kinds of information cannot be used, and thus the diagnosis is performed with the same priority level (load factor, execution time) for all the servers. As a result, diagnosis with a focus on consumables in accordance with the state of a user operation or with a focus on components likely to have problems cannot be performed.
In other words, the existing technology has a problem in that since various kinds of information collected during online maintenance is information collected by the service OS and can be used only in an environment where the service OS is running, the information collected during online maintenance cannot be used during offline maintenance performed while the service OS is stopped.
More specifically, it is difficult in the existing offline maintenance technology to diagnose components in accordance with priority levels given based on the status of an information processing apparatus, or to perform diagnosis with a focus on locations likely to have problems. For instance, when a central processing unit (CPU), a memory, a hard disk drive (HDD), and an input/output (I/O) device are four components to be diagnosed, processing resources are evenly allocated to CPU diagnosis, memory diagnosis, HDD diagnosis, and I/O diagnosis in the existing offline maintenance.
In offline maintenance, since various kinds of information stored in the service OS during online diagnosis is unable to be referred to, the state of the operation of the information processing apparatus cannot be used for the offline diagnosis even when an HDD failure has been detected or even in a state right after the CPU has been replaced. Therefore, diagnosis focusing specifically on components having problems is preferably not performed, thereby lowering diagnosis efficiency.
In particular, since it is desired that the time is as short as possible during which, for example, an information processing apparatus used as a server is stopped, the low diagnosis efficiency in offline diagnosis causes a serious problem. In addition, when the time during which service may be stopped is specified, there is a problem in that the existing offline diagnosis does not allow the diagnosis to be finished within a specified time, thereby causing the occurrence of an incomplete detection of failures. When the server has a large configuration including many HDDs and I/O devices, or the HDDs have large capacity, it is difficult to finish the diagnosis within a limited time. Therefore, improving the diagnosis efficiency in offline diagnosis is an important problem to be solved.
In view of the above, the present disclosed technology provides an information processing apparatus, a method of diagnosis, and a computer-readable recording medium configured to store a diagnostic program, allowing improved efficiency of offline diagnosis to be realized.